--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE article
+ SYSTEM "/usr/share/sgml/docbook/xml-dtd-4.1.2-1.0-26/docbookx.dtd">
+<article>
+ <articleinfo>
+ <title>gpsbabel</title>
+ <revhistory>
+ <revision>
+ <revnumber>1.0</revnumber>
+ <date>2005-10-26T10:33:03.0Z</date>
+ <authorinitials>Dave Pawson</authorinitials>
+ <revremark>Initial conversion from plain text file at <ulink url="http://www.gpsbabel.org/readme.html">gpsbabel.org/readme.html</ulink>
+ </revremark>
+ </revision>
+ <revision>
+ <revnumber>1.1</revnumber>
+ <date>2005-10-27T07:39:32.0Z</date>
+ <authorinitials>DaveP</authorinitials>
+ <revremark>Update to <ulink url=" http://cvs.sourceforge.net/viewcvs.py/gpsbabel/gpsbabel/README?rev=1.143&view=download">cvs, rev 1.143</ulink>
+ </revremark>
+ </revision>
+ <revision>
+ <revnumber>1.2</revnumber>
+ <date>2005-10-27T15:25:55.0Z</date>
+ <authorinitials>DaveP</authorinitials>
+ <revremark>Update to Add toc for formats & brief format description
+ </revremark>
+ </revision>
+
+ </revhistory>
+ </articleinfo>
+<?formats?>
+ <section>
+ <title>THE PROBLEM</title>
+ <para> There are simply too many gratuitously different file formats
+to hold waypoint, track, and route information in various programs
+used by computers. GPX (http://www.topografix.com/gpx.asp) defines a
+standard in XML to contain all the data, but there are too many
+programs that don't understand it yet and too much data that are in an
+alternate formats.
+</para>
+ </section>
+ <section>
+ <title>THE SOLUTION</title>
+ <para> I needed to convert waypoints between a couple of formats, so I
+whipped up a converter and based it on an extensible foundation so
+that it was easy to add new formats. Most file formats added so far
+have taken under 200 lines of reasonable ISO C so they can be stamped
+out pretty trivially. Formats that are ASCII text delimited in some
+fixed way can be added with no programming at all via our 'style'
+mechanism.
+</para>
+ </section>
+ <section>
+ <title>GETTING IT / BUILDING IT</title>
+ <para> GPSBabel is distributed in source format that will work on
+about any operating system and as ready-to-run binaries for some
+operating systems, notably Windows. See the "OS-Specific notes" at
+<ulink url="http://www.gpsbabel.org ">gpsbabel.org</ulink>for
+instructions on those binary kits.
+</para>
+ <para> For operating systems where no binary is provided, you will
+have to build it. The code should be compilable on any system with
+ISO C89 compilers. It's been tested on UnixWare, OpenServer, OS/X,
+Linux, Solaris, and a variety of processors and compilers.
+</para>
+ <para> Libexpat is required for source builds. If you get errors
+about expat.h being missing, you must either edit the Makefile to tell
+the compiler where it is or install it in a sensible place. Exapt can
+be downloaded from http://expat.sourceforge.net and is part of Apache
+so it's very portable.
+</para>
+ </section>
+ <section>
+ <title>COMMON USAGE</title>
+ <para>Invocation was meant to be flexible. Unfortunately, that can
+sometimes lead to unwieldy command lines.</para>
+ <screen format="linespecific">gpsbabel -? </screen>
+ <para>will always show you the supported file types. To use this
+program, just tell it what you're reading, where to read it from, what
+you're writing, and what to write it to. For example:</para>
+ <screen format="linespecific">gpsbabel -i geo -f /tmp/geocaching.loc -o gpx -F /tmp/geocaching.gpx</screen>
+ <para>tells it to read the first file in geocaching.com format and
+create a new file in GPX format.</para>
+ <para> This command will read from a Magellan unit attached to the
+first serial port on a Linux system (device names will vary on other
+OSes) and write them as a geocaching loc file. The second command
+does the same for windows.</para>
+ <screen format="linespecific">gpsbabel -i magellan -f /dev/ttyS0 -o geo -F mag.loc </screen>
+ <screen format="linespecific">gpsbabel -i magellan -f com1 -o geo -F mag.loc</screen>
+ <para>
+Optionally, you may specify <parameter moreinfo="none">"-s"</parameter> in any command
+line. This causes the program to ignore any "short" names that may be
+present in the source data format and synthesize one from the long
+name. This is particularly useful if you're writing to a target
+format that isn't the lowest common denominator but the source data
+was written for the lowest common denominator. I use this for writing
+data from geocaching.com to my Magellan so my waypoints have "real"
+names instead of the 'GC1234' ones that are optimized for NMEA-only
+receivers. A geocacher with a Magellan receiver may thus find
+commands like this useful.</para>
+ <screen format="linespecific">
+gpsbabel -s -i geo -f geocaching.loc -o magellan -F /dev/ttyS0
+gpsbabel -s -i geo -f geocaching.loc -o magellan -F com1</screen>
+ </section>
+ <section>
+ <title>ADVANCED USAGE</title>
+ <para>Argument are processed in the order they appear on the command
+line and are translated internally into a pipeline that data flows
+through when executed. Normally one would: </para>
+ <simplelist type="vert">
+ <member>read from one input</member>
+ <member>optionally apply filters </member>
+ <member>write into one output</member>
+ </simplelist>
+ <para> but GPSBabel is flexible enough to allow more complicated
+operations such as reading from several files (potentially of
+different types), applying a filter, reading more data, then write the
+merged data to multiple destinations.
+</para>
+ <para>The input file type remains unchanged until a new
+<parameter moreinfo="none">-i</parameter> argument is seen. Files are read in the
+order they appear. So you could merge three input files into one
+output file with: </para>
+ <screen format="linespecific">
+gpsbabel -i geo -f 1.loc -f 2.loc -f 3.loc -o geo -F big.loc</screen>
+ <para>You can merge files of different types:</para>
+ <para>gpsbabel -i geo -f 1.loc -i gpx -f 2.gpx -i pcx 3.pcx \
+-o gpsutil -F big.gps</para>
+ <para> You can write the same data in different output formats:</para>
+ <screen format="linespecific">gpsbabel -i geo -f 1.loc -o gpx -F 1.gpx -o pcx 1.wpt</screen>
+ <para>If you want to change the character set of input or/and output
+ side you can do this with the option -c <character set>. You can get
+ a complete list of supported character sets with "gpsbabel -l".
+ To change the character set on both sides you should do this:</para>
+ <screen format="linespecific">
+gpsbabel -i xcsv,style=foo.style -c latin1 -f foo \
+ -o xcsv,style=bar.style -c ms-ansi -F bar</screen>
+ <para>Note, that some formats has a fixed character set and ignore this option.</para>
+ </section>
+ <section>
+ <title>ROUTE AND TRACK MODES</title>
+ <para> Most formats will make reasonable attempt to work transparently
+with waypoints, tracks, and routes. Some formats, like 'garmin' and
+'magellan' require the <parameter moreinfo="none">-t</parameter> flag to work with
+tracks and <parameter moreinfo="none">-r</parameter> to work with
+routes. <parameter moreinfo="none">-w</parameter> is for waypoints, and is the
+default. So if you wanted to read all data from your unit into a gpx
+file, you might use a command like:</para>
+ <screen format="linespecific">
+gpsbabel -t -r -w -i magellan -f com1: -o gpx -F backup.gpx</screen>
+ <para> Tracks and routes are advanced features and don't try to handle
+every possible hazard that can be encountered during a conversion. If
+you're merging or converting files of similar limitations, things work
+very well.</para>
+ <para> Tracks and routes will sometimes be converted to a list of
+waypoints when necessary, f.i. when writing into one of the CSV
+formats. The inverse operation is not supported right now, so reading
+the converted track back from CSV will always result in a list of
+waypoints, not the original track.
+</para>
+ <para> The presence of <parameter moreinfo="none">-s</parameter> on the command
+line tends to creats havoc on tracks and routes since many of these
+formats rely on internal linkages between such points and renaming
+them may break those linkages. In general, don't use
+<parameter moreinfo="none">-s</parameter> when tracks or routes are present.
+</para>
+ </section>
+ <section id="formats">
+ <title>THE FORMATS</title>
+ <glosslist>
+ <glossentry id="an1">
+ <glossterm>AN1</glossterm>
+ <glossdef>
+ <para role="desc">DeLorme format</para>
+ <para> This format supports the DeLorme ".an1" drawing file format.
+It can currently be used to either read or write drawing files. If
+you use this format to create drawing files with routes or waypoints
+from another source, it will currently create "Red Flag" symbols for
+waypoints, and thick red lines for routes or tracks. It is possible
+to merge two drawing layers by doing something like this:
+</para>
+ <screen format="linespecific">gpsbabel -i an1 -f one.an1 -f two.an1 -o an1 -F merged.an1
+</screen>
+ <para> In this case, the merged data will contain all of the
+properties of the original data.
+</para>
+ <para>If your original data contains geocaching-specific information such
+ as difficulty and terrain, GPSBabel will automatically include that
+ information in the waypoint descriptions in the generated drawing
+ file. If you do not want that, specify the "nogc" option on the
+ command line:</para>
+ <screen format="linespecific">gpsbabel -i gpx -f 12345.gpx -o an1,nogc -F 12345.an1</screen>
+ <para>The "deficon" option allows you to specify which symbol to use for
+ points that don't have a symbol already. It defaults to "Red Flag"
+ but it accepts any symbol name you can put in a DeLorme export file.
+ To find the name of a specific symbol in Street Atlas, let the mouse
+ pointer hover over it for a few seconds and the name will be displayed.</para>
+ <para> The "color" option allows you to specify the color for line
+ data. It accepts color names of the form "#FF0000" (red) or
+ any of the 16 common color names from the Cascading Style
+ Sheets specification.i</para>
+ <para> The "zoom" option specifies at what zoom level Street Atlas
+will begin showing reduced versions of your symbols. The default is
+10. Setting zoom to 0 will disable this feature. Setting it to
+anything but the default will override the zoom level specified on any
+waypoints that were read from an existing an1 file; this is by design.
+</para>
+ <para>GPSBabel has limited experimental support for other
+ types of layers besides the default "drawing" layer with the
+ use of two options:
+</para>
+ <para>
+ The "type" option specifies the type of the drawing layer to be
+ created. The supported values are "drawing", "road", "trail",
+ "waypoint", or "track". If you do not specify a type, the default
+ will be either the type of the previous an1 file or "drawing" if
+ there is no previous file. This lets you merge, for example, two
+ road layers without having to specify "type=road" for the output.
+
+ </para>
+ <para>If you are creating a road layer, you may also use the "road" option,
+ which allows you to change the types of roads based on their names.
+ You can change multiple roads at the same time. Currently supported
+ types are </para>
+ <simplelist type="vert">
+ <member>
+ <parameter moreinfo="none">limited</parameter> Limited-access freeways</member>
+ <member>
+ <parameter moreinfo="none">toll</parameter> Limited-access toll highways</member>
+ <member>
+ <parameter moreinfo="none">ramp</parameter> Access ramps for limited-access highways</member>
+ <member>
+ <parameter moreinfo="none">us</parameter> National highways (e.g. US routes)</member>
+ <member>
+ <parameter moreinfo="none">primary</parameter> Primary State/Provincial routes</member>
+ <member>
+ <parameter moreinfo="none">state</parameter> State/Provincial routes</member>
+ <member>
+ <parameter moreinfo="none">major</parameter> Major Connectors</member>
+ <member>
+ <parameter moreinfo="none">ferry</parameter> Ferry Routes</member>
+ <member>
+ <parameter moreinfo="none">local</parameter> Local Roads</member>
+ <member>
+ <parameter moreinfo="none">editable</parameter> User-drawn Roads
+</member>
+ </simplelist>
+ <para>GPSBabel defaults to creating editable roads. These
+ are routed just like local roads, but may be edited with the
+ drawing tools in Street Atlas.</para>
+ <para>
+
+ This option has a special format that is best demonstrated by example:</para>
+ <screen format="linespecific">
+
+ "road=I-599!limited!Beecher St.!major" </screen>
+ <para>
+ This option will cause any road named "I-599" to become a limited-
+ access highway and any road named "Beecher St." to become a major
+ connector. Note that roads that have had their types changed in
+ this way are not editable in Street Atlas, so make sure they are
+ where you want them before you change them, and make sure to keep
+ a backup of your original road layer. Note that the ! is a shell
+ metacharacter in bash and possibly other shells, so you may have to
+ use single quotes or some other escape mechanism.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="baroiq">
+ <glossterm>BAROIQ</glossterm>
+ <glossdef>
+ <para role="desc">Brauniger IQ series</para>
+ <para>Serial download protocol for the Brauniger IQ series of
+ barograph recording flight instruments. Creates a track of altitude
+ vs time which can be merged with a GPS track of the same flight to
+ create a three dimensional IGC file. </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="bcr">
+ <glossterm>BCR</glossterm>
+ <glossdef>
+ <para role="desc">Motorrad Routeplanner 2002 - </para>
+ <para> This file format (extension .bcr) is used in "Motorrad
+ Routenplaner 2002-..." by Map&amp;Guide. It is a
+ route-onle format. If you own a newer release (2005...) you
+ can also use the XML export and convert via <command moreinfo="none">gpsbabel
+ ... -i tef ...</command> to your preferred format. May be
+ there are other products from Map&Guide using the
+ format.
+</para>
+ <para> Coordinates are stored in Mercator format. The calculation between
+ this and our internal format can result in visible differences.
+ Experience reports are welcome.</para>
+ <para>
+ Options:
+</para>
+ <screen format="linespecific">
+index - If more then one route are present in source data, with this
+ option you can determine, which of this should used for the
+ output. The range is 1 to number routes in input. If you don't
+ use this, only the first route will be converted.
+</screen>
+ <screen format="linespecific">
+name - Not every input format has a real name for routes in their
+ data. So you can give the route a nice name.</screen>
+ <screen format="linespecific">
+radius - Overwrites the default value of 6371000.0 meters for the
+ earth radius. My be this can help to reduce
+ differences.</screen>
+ <para> An example with all options:</para>
+ <screen format="linespecific">
+gpsbabel -r \
+ -i gpx -f in.gpx
+ -o bcr,index=1,name="From A to B",radius=6371012 \
+ -F a_to_b.bcr
+</screen>
+ </glossdef>
+ </glossentry>
+ <glossentry id="cetus">
+ <glossterm>CETUS</glossterm>
+ <glossdef>
+ <para role="desc">Cetus, for Palm OS</para>
+ <para>Cetus GPS <ulink
+ url="http://www.cetusgps.dk/">www.cetusgps.dk</ulink>
+ is a program for Palm/OS. Working with Ron Parker and
+ Kjeld Jensen, we can now read and write files for that
+ program.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="coastexp">
+ <glossterm>coastexp</glossterm>
+ <glossdef>
+ <para role="desc">CoastalExplorer (tm) </para>
+ <para>This is the format used by CoastalExplorer
+ (tm). The format is XML with items uniquely identified
+ by Windows-style UUIDs. <ulink
+ url="http://www.rosepointnav.com">http://www.rosepointnav.com</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="copilot">
+ <glossterm>CoPilot</glossterm>
+ <glossdef>
+ <para role="desc">CoPilot Flight Planner for Palm OS</para>
+ <para> This code is mostly intended to convert CoPilot
+ Flight Planner for Palmd/OS atabases into other
+ formats. You probably should not use this to write
+ CoPilot databases, although the code is there, because
+ GPSBabel doesn't convert magnetic declination values.</para>
+ <para> Questions, bug reports, etc, to ptomblin at xcski.com</para>
+ <para>
+ <ulink url="http://xcski.com/~ptomblin/CoPilot/">http://xcski.com/~ptomblin/CoPilot/</ulink> and <ulink url="http://navaid.com/CoPilot/">http://navaid.com/CoPilot</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="coto">
+ <glossterm>COTO</glossterm>
+ <glossdef>
+ <para role="desc">cotoGPS, a Palm GPS program</para>
+ <para> Format for cotoGPS, a Palm GPS program. It can read both
+ track and marker (waypoint) files. It is currently unable
+ to write track files, so only marker files can be written. The
+ marker categories are written to and read from the icon
+ description. The 'Not Assigned' category leaves the icon
+ description empty on read. Currently geocache info is ignored.</para>
+ <para> Options: </para>
+ <para>
+ <parameter moreinfo="none">zerocat</parameter> (output) - Name for the
+ Palm 'Not Assigned' category. Defaults to 'Not
+ Assigned'.
+ </para>
+ <para>
+
+ There is also a debugging option called 'internals' which
+ takes a XCSV delimiter value. It writes some internal
+ values (distance, arc, x and y) of the cotoGPS track
+ format to the notes field.
+
+
+ URL: <ulink url="http://core.de/~coto/projects/cotogps/">core.de/~coto</ulink>
+ Contributed by Tobias Minich.
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="cst">
+ <glossterm>CST</glossterm>
+ <glossdef>
+ <para role="desc">CarteSurTable - French shareware</para>
+ <para> With this format we can read CarteSurTable data
+ files. CarteSurTable is a shareware program widely
+ used in France. The data inside have to be seen as a
+ mixture of a waypoints list, one route and several
+ tracks. <ulink
+ url="http://phgiraud.free.fr/CarteSurTable/CarteSurTable.htm">phgiraud.free.fr</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="csv">
+ <glossterm>CSV</glossterm>
+ <glossdef>
+ <para role="desc">Comma Separated Variable, for Delorme
+ S&A Deluxe</para> <para> There are a billion
+ variants of Comma Separated Value data. This is the one
+ that makes Delorme S&A Deluxe 9 happy. It's also a
+ very simple program and useful for many other programs
+ like spreadsheets.</para>
+ <para> CSV is also the correct format for Lowrance
+ MapCreate, their commercial mapping program, or GDM6
+ (their free waypoint manager) for iFinder which is
+ available at <ulink
+ url="http://www.lowrance.com/Software/GDM6/Default.asp">lowrance.com</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="custom">
+ <glossterm>custom</glossterm>
+ <glossdef>
+ <para role="desc">Plain CSV</para>
+ <para> This is a "kitchen sink" CSV format. No known program will
+ read it, but it's handy for simply converting an arbitrary file to
+ text so it can be pulled into a spreadsheet or manipulated with text
+ processing tools.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="dna">
+ <glossterm>DNA</glossterm>
+ <glossdef>
+ <para role="desc">Nivitrak DNA marker format</para>
+ <para>Navitrak DNA marker format - Another CSV format
+ file. This is the format that is compatible with the
+ DNA Desktop import/export command. Reading the binary
+ Markers.jwp format directly off the data card is not
+ supported yet. Contributed by Tim Zickus.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="easygps">
+ <glossterm>EasyGPS</glossterm>
+ <glossdef>
+ <para role="desc">EasyGPS binary format</para>
+ <para> This is the binary file format used by EasyGPS.
+ This format is seemingly being phased out in favor of
+ GPX in newer versions of EasyGPS, but this allows
+ conversions to and from the old binary .loc format.
+</para>
+ <para>
+ <ulink url="http://www.easygps.com/">http://www.easygps.com/</ulink>
+ </para>
+ <para> Information about and sketchy code to implement this file
+format were provided by Eric Cloninger.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="fugawi">
+ <glossterm>Fugawi</glossterm>
+ <glossdef>
+ <para role="desc">Fugawi CSV format</para>
+ <para> This was a requested CSV format, *not* the
+ proprietary binary format used by Fugawi. Like any
+ other CSV format, GPSBabel cannot read tracks in this
+ format, but converting a track into it and then
+ importing as track in Fugawi works.</para>
+ <para> It is known to work with Fugawi V3.1.4.635. When
+ importing/exporting waypoints, one has to specify the
+ order of fields as follows (names of fields may depend
+ on the language used by Fugawi):</para>
+ <simplelist type="vert">
+ <member> - Name</member>
+ <member> - Comment</member>
+ <member> - Description</member>
+ <member> - Latidude</member>
+ <member> - Longitude</member>
+ <member> - Altitude (metres)</member>
+ <member> - Date (yyyymmdd/yymmdd)</member>
+ <member> - Time of day (hhmmss)</member>
+ </simplelist>
+ <para> When importing tracks, use "[ignore]" instead of
+ "Name", "Comment" and "Description".</para>
+ <para>
+ <ulink url="http://www.fugawi.com/">http://www.fugawi.com/</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="garmin">
+ <glossterm>GARMIN</glossterm>
+ <glossdef>
+ <para role="desc">Garmin waypoint format</para>
+ <para> Waypoint serial upload and download works
+ reliably under both POSIX and Windows. I originally
+ tested it with a Vista, a V, and a base eTrex, all
+ graciously provided on loan by Joe Armstrong, but it's
+ now regularly exercised on a 60CS (USB and serial) and
+ many other models. The communications library used,
+ jeeps, claims to support most models of Garmin
+ hardware. Be sure the GPS is set for "Garmin mode" in
+ setup and that nothing else (PDA hotsync programs,
+ gpsd, getty, pppd, etc.) is using the serial port.
+</para>
+ <para> GPSBabel supports the USB Garmins under Windows
+ and on Linux and OS/X via libusb. It's reported
+ successful with VistaC, SummitC, 60C, 60CS, 76C, 76CS,
+ 96C, and Quest. Some users report success with
+ StreetPilot 2610 and some do not, but nobody's followed
+ up with details on that.
+</para>
+ <para> Currently, only a single USB unit at a time can
+ be supported. The device name to use on the command
+ line is "usb:" Thus, to read the waypoints from a
+ Garmin USB unit and write them to a GPX file:
+</para>
+ <screen format="linespecific">gpsbabel -i garmin -f usb: -o gpx -F blah.gpx</screen>
+ <para> When reporting problems with Garmin, be sure to include the full
+ unit model, firmware version, and be prepared to offer debugging
+ dumps by adding "-D9" to the command line, like:
+</para>
+ <screen format="linespecific">gpsbabel -D9 -i garmin -f usb: -o gpx -F blah.gpx</screen>
+ <para> Custom icons are supported on units that support that. Neither
+GPSBabel nor your firmware know what is associated with any given slot
+number. They don't know that the picture you placed in the first slot
+is a happy face, they only know they're in the lowest numbered slot.
+GPSBabel names the them consistently with Mapsource, so they are named
+'Custom 0' through 'Custom 23'.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="gcdb">
+ <glossterm>Gcdb</glossterm>
+ <glossdef>
+ <para role="desc">GeocachingDB format</para>
+ <para>This is the GeocachingDB by DougsBrat. It works
+ with v2 and v3 of this program. See <ulink
+ url="http://vip.hyperusa.com/~dougs/geocachingdb/geocachingdb.htm">vip.hyperusa.com</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="gdb">
+ <glossterm>GDB</glossterm>
+ <glossdef>
+ <para role="desc">Garmin GPS Database (as in MapSource) format</para>
+ <para> Support for the "Garmin GPS Database" format
+ used by default in MapSource versions since release
+ 6.0. By default we create gdb's of version 2. Version
+ 2 is used in Mapsource 6.3 and 6.5.
+</para>
+ <para> Garmin GPS database is an undocumented file
+ format. The basic info for this module comes from the
+ existing MapSource conversion code.
+</para>
+ <para> Additional options:</para>
+ <screen format="linespecific"> ver - set the data format version of the output file (currently
+1 or 2); 2 is our default. </screen>
+ <screen format="linespecific">via - Drop hidden route points (means
+calculated stuff)</screen>
+ <screen format="linespecific">cat - default category on output (1..16)</screen>
+ </glossdef>
+ </glossentry>
+ <glossentry id="geo">
+ <glossterm>GEO</glossterm>
+ <glossdef>
+ <para role="desc">geocaching.com .loc file format</para>
+ <para>geocaching.com spits up geocaching.loc files that are
+ XML-ish but not quite GPX. Becuase it's so close to GPX, this
+ format is very well supported.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="geocaching-db">
+ <glossterm>Geocaching DB</glossterm>
+ <glossdef>
+ <para role="desc">GeocachingDB PDA format</para>
+ <para> This is a PDA file format. It was tested
+ against version 2 of GeocachingDB and a development
+ snapshot of version 3. Information on the file format
+ came from Dougs Brat and Ron Parker. A particularly
+ handy way to use GPSBabel on these files is to use
+ GPSBabel to read a GPX file with Groundspeak
+ (geocaching.com) extensions and let it write you a
+ GeocachingDB file that contains the cache names,
+ difficulty, terrain, and such.</para>
+ <para>
+ <ulink url="http://vip.hyperusa.com/~dougs/geocachingdb/geocachingdb.htm">vip.hyperusa.com</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="geonet">
+ <glossterm>GEOnet</glossterm>
+ <glossdef>
+ <para role="desc">GEOnet Names Server country file format (input)</para>
+ <para>Input support for the GEOnet Names Server (GNS) country file
+ structure. Export to this format is not possible, as this format
+ has too many fields that we never get populated by any other format.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="geoniche">
+ <glossterm>geoniche</glossterm>
+ <glossdef>
+ <para role="desc">Geoniche - Palm format for off-road users</para>
+ <para>Geoniche is a Palm/OS application oriented for the off-road
+ user. This module was contributed by Rick Richardson. See <ulink url="http://www.nwlink.com/~raydar/GeoNiche/">nwlink.com</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="glogbook">
+ <glossterm>glogbook</glossterm>
+ <glossdef>
+ <para role="desc">Garmin logbook format for Forerunner and ForeTrex</para>
+ <para>This is the XML format used by the Garmin Logbook
+ product that ships with Forerunner and Foretrex.
+ <ulink
+ url="http://www.garmin.com">http://www.garmin.com</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="google">
+ <glossterm>GOOGLE</glossterm>
+ <glossdef>
+ <para role="desc">Google maps routes</para>
+ <para> This format is designed to read the XML emitted
+ when you tack "&amp;output=js" onto the end of a
+ Google Maps route URL (use the "link to this page"
+ option to get a usable URL.) This allows you to plan a
+ route using Google Maps, then download it and use it in
+ your own mapping program or GPS receiver. If you use a
+ Unix-compatible operating system, this shell script
+ might be useful:
+</para>
+ <screen format="linespecific">
+#!/bin/sh
+FROM="233 S. Upper Wacker Dr, Chicago, IL"
+TO="1060 W. Addison St, Chicago, IL"
+wget -O - "http://maps.google.com/maps?q=$FROM to $TO&amp;output=js" \
+ 2&gt;/dev/null &gt;google_map.js
+</screen>
+ <para> gpsbabel -i google -f google_map.js -o gpx -F google_map.gpx
+</para>
+ <para> Note that Internet Explorer has been observed to damage the
+XHTML beyond recognition so use a better browser to save the pages
+such as Firefox or Mozilla.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="gpilots">
+ <glossterm>GpilotS</glossterm>
+ <glossdef>
+ <para role="desc">Palm OS format for GPilots</para>
+ <para> This is a Palm/OS file format for GPilotS. It
+ was tested against version 6.2.
+</para>
+ <para>
+ <ulink url="http://www.cru.fr/perso/cc/GPilotS/">http://www.cru.fr/perso/cc/GPilotS/</ulink>
+ </para>
+ <para> Neither tracks nor routes are supported at this time.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="gpl">
+ <glossterm>gpl</glossterm>
+ <glossdef>
+ <para role="desc">Delorme gpl format</para>
+ <para>This is the 'gpl' format as used in Delorme
+ mapping products. It is a track format and contains
+ little more than the tracklog of a GPS that was
+ attached while driving. <ulink
+ url="http://www.frontiernet.net/~werner/gps/">frontiernet.net</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="gpsdrive">
+ <glossterm>GPSDRIVE</glossterm>
+ <glossdef>
+ <para role="desc">GpsDrive way.txt file format.</para>
+ <para>GpsDrive way.txt file format. A space seperated
+ format file. Tested against GpsDrive v 1.30 found at
+ <ulink
+ url="http://www.kraftvoll.at/software">kraftvoll.at</ulink>.
+ Contributed by Alan Curry.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="gpsdrivetrack">
+ <glossterm>GPSDRIVETRACK</glossterm>
+ <glossdef>
+ <para role="desc">GpsDrive saved track format</para>
+ <para>Format used by GpsDrive to save tracks. Like
+ GPSDRIVE a space seperated format file. See above for a
+ link to GpsDrive. Contributed by Tobias Minich.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="gpsman">
+ <glossterm>GPSMAN</glossterm>
+ <glossdef>
+ <para role="desc">GPS Manager format (WGS84, DDD)</para>
+ <para> GPS Manager can read and write formats that this
+ converter doesn't understand. The default formats
+ (WGS84, DDD) work reliably.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="gpspilot">
+ <glossterm>GPSPILOT</glossterm>
+ <glossdef>
+ <para role="desc">GPSPILOT file format</para>
+ <para>The file format for GPSPILOT <ulink
+ url="http://www.gpspilot.com">gpspilot.com</ulink> was
+ provided by Ron Parker. The output from this module
+ has been tested with GPSPilot Tracker v5.05sx, but it
+ is based on reverse-engineering so it may not work with
+ all versions of all GPSPilot products. It had
+ read-only support for Airport, Navaid, City and
+ Landmark files but will read and write Point
+ files.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="gpsutil">
+ <glossterm>GPSUTIL</glossterm>
+ <glossdef>
+ <para role="desc">GPSUtil file format</para>
+ <para>GPSUtil has a simple file format of this program that
+ runs on POSIX- compliant OSes like UNIX and Linux.
+ Reads and writes of this format are reliable. (I've
+ also contributed to this program.) It's available at
+ <ulink url="http://www.cs.uakron.edu/~hennings/gpsutil">cs.uakron.edu</ulink>.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="gpx">
+ <glossterm>GPX</glossterm>
+ <glossdef>
+ <para role="desc">EasyGPS, ExpertGPS etc format. </para>
+ <para>This is the most capable and expressive of all
+ the file formats supplied. It is described at <ulink
+ url="http://www.topografix.com/gpx.asp">topografix.com</ulink>
+ and is supported by EasyGPS, ExpertGPS, and many other
+ programs described at <ulink
+ url="http://www.topografix.com/gpx_resources.asp">topografix.com</ulink></para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="hiketech">
+ <glossterm>Hiketech</glossterm>
+ <glossdef>
+ <para role="desc">Mac OS HikeTech formats. TopoDraw, Link2GPS & GPSWrite</para>
+
+ <para>This is the .gps format used by the Mac OS X applications
+ written by HikeTech. These include TopoDraw, Link2GPS, and
+ GPSWrite. More information about these products can be found at
+ <ulink url="http://www.hiketech.com">hiketech.com</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="holux">
+ <glossterm>HOLUX</glossterm>
+ <glossdef>
+ <para role="desc">Holux format (Holuxgm-100)</para>
+
+ <para> The Holuxgm-100 (e-fox) gps receiver uses
+ standard compact flash cards. File formats were
+ provided by Holux-Taiwan <ulink
+ url="http://www.holux.com.tw">holux.com</ulink> to the
+ author. The code was tested against version 2.27E1;
+ other versions and receivers may work but have not been
+ explictly tested. Anyone with information on other
+ Holux receivers is encouraged to contact
+ jochen@bauerbahn.net.
+</para>
+ <para> When copying the .wpo file to a flash card, the
+ file must be named <filename
+ moreinfo="none">tempwprt.wpo</filename> as the receiver
+ will ignore all other files.
+</para>
+ <para> Comparing the waypoints of a .wpo files against
+ other formats like .gpx you may notice a small
+ difference in the latitude and longitude values. The
+ reason is the low resolution of the coordinates in the
+ wpo file format. In a .wpo file the reolution is
+ 1/10"; in gpx for example it is 1/100". A a practical
+ matter, this loss is only about 1.7 meters (5 feet).
+</para>
+ <para> The generated waypoint failes can also be used
+ by MapShow version 1.14. This program is free of
+ charge from the Holux web site.
+</para>
+ <para> This format was contributed by Jochen Becker.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="hsandv">
+ <glossterm>hsandv</glossterm>
+ <glossdef>
+ <para role="desc">HSA Systems Endeavour Navigator format</para>
+
+ <para>HSA Systems Endeavour Navigator format - will import both the
+ old version 4.x binary files, and the newer XML based ones. Only
+ writes the new XML (5.0 and above) format. (use the .exp
+ extension)</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="html">
+ <glossterm>HTML</glossterm>
+ <glossdef>
+ <para role="desc">HTML format</para>
+
+ <para> HTML output generates a single HTML file of all
+ of the waypoints in the input file. It supports a
+ number of Geocaching GPX extensions, as well as filters
+ out potentially harmful HTML from the input file while
+ maintaining almost all of the source HTML formatting.
+ Use the 'stylesheet' option to specify a CSS stylesheet
+ to be used with the resulting HTML file. Use the
+ 'encrypt' option to encrypt hints from Groundspeak GPX
+ files. Use the 'logs' option to include Groundspeak
+ cache logs.
+</para>
+ <para> The following command line reads a GPX file with Groundspeak
+extensions and writes an HTML file with encrypted hints that is
+rendered using a custom stylesheet:
+</para>
+ <screen format="linespecific">
+gpsbabel -i gpx -f 12345.gpx \
+ -o html,stylesheet=green.css,encrypt -F 12345.html
+</screen>
+ </glossdef>
+ </glossentry>
+ <glossentry id="igc">
+ <glossterm>IGC</glossterm>
+ <glossdef>
+ <para role="desc">FAI/IGC Data file format</para>
+
+ <para>FAI/IGC Data File -- Used by the international
+ gliding community to record gliding flights. IGC files
+ can be converted to and from tracks representing
+ recorded flights, and routes representing task
+ declarations in other formats.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="ignrando">
+ <glossterm>IGNRando</glossterm>
+ <glossdef>
+ <para role="desc">IGN Rando track file format</para>
+
+ <para>Input and output support for IGN Rando track
+ files. IGN Rando is a program mainly used in France
+ for Topo maps. The files are XML based and are
+ "windows-1252" encoded. Trackpoints come without
+ timestamp.</para>
+ <para>
+
+ Options:
+ </para>
+ <para>
+ <parameter moreinfo="none">index</parameter> - Use track number <index>
+ from input data for output. The range is 1 to number of
+ tracks in input.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="kml">
+ <glossterm>KML</glossterm>
+ <glossdef>
+ <para role="desc">Keyhole Markup Language format.</para>
+
+ <para> KML, the Keyhole Markup Language, is used by Keyhole and
+ Google Earth. (Google Earth uses GPSBabel internally for
+ receiver communications and several file format imports and
+ exports. There are features in this file format that we
+ don't support such as camera views, but waypoints, tracks, and
+ routes work well.</para>
+ <para>Additional options:</para>
+ <para>
+ <parameter moreinfo="none">lines=n</parameter> (default n=1) Draws lines between
+points in tracks and routes when n is non-zero.</para>
+ <para>
+ <parameter moreinfo="none">points=n</parameter> (default n=1) Draws placemarks for
+tracks and routes when n is non-zero.</para>
+ <para>
+ <parameter moreinfo="none">line_width=n</parameter> (default n=6) Width of
+drawn lines, in pixels.</para>
+ <para>
+ <parameter moreinfo="none">line_color=n</parameter> (default=65eeee17) Line colour
+specified in hex AABBGGRR.</para>
+ <para>
+ <parameter moreinfo="none">floating=n</parameter> (default n=0) Altitudes are
+not clamped to ground when n is non-zero. This option is more useful
+to pilots than to hikers.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="lowranceusr">
+ <glossterm>LowranceUSR</glossterm>
+ <glossdef>
+ <para role="desc">Lowrance iFinder .USR format</para>
+
+ <para> The Lowrance iFinder GPS series has the unique
+ capability to output its data to an MMC card. The data
+ is saved to the card as a .USR file and can be read by
+ your computer using a card reader. Waypoints, routes,
+ tracks are supported. By default, Event marker icons
+ are converted to waypoints. Symbols tend to get lost
+ in the translation.</para>
+ <para> Additional options: ignoreicons - don't convert
+ icons to waypoints merge - (USR output) merge all
+ tracks into a single track with segments break - (USR
+ input) break track segments into separate tracks</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="mag_pdb">
+ <glossterm>mag_pdb</glossterm>
+ <glossdef>
+ <para role="desc">Palm OS for Map&Guide format</para>
+
+ <para> With this format we support the Palm/OS export
+ for Map&Guide based products like "PowerRoute",
+ "Motorrad-Routenplaner" and (maybe) other software. The
+ exported files can contain maps and/or route
+ descriptions. The reader for this format has been
+ tested with PowerRoute 5+6, Motorrad-Routenplaner
+ 2002(-2006).</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="magellan">
+ <glossterm>MAGELLAN</glossterm>
+ <glossdef>
+ <para role="desc">Magellan format</para>
+
+ <para>Waypoint serial upload and download works
+ reliably to the 315, 330, Meridian, and SportTrak
+ family. I expect it to work on any modern Magellan
+ unit.</para>
+ <para> As of 08/30/02, GPSBabel can also read and write
+ the files that can be stuck on the SD memory cards with
+ the Meridian models. Simply specify a file instead of
+ a serial port.</para>
+ <para> Communication errors are handled robustly and
+ verification of data is enabled.</para>
+ <para> Additional sub options: <parameter moreinfo="none">baud:</parameter>
+ may be 1200, 2400, 4800, 9600, 19200, but must match
+ receiver.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="magellanx">
+ <glossterm>MAGELLANX</glossterm>
+ <glossdef>
+ <para role="desc">Magellan Explorist format</para>
+
+ <para>The SD card format used by the Magellan Explorist
+ 400, 500, and 600. It's identical to the Magellan SD
+ format used by Meridian, but allows longer waypoint
+ names.</para>
+ <para> You should name any file created with this
+ format with a ".upt" extension so the firmware can read
+ it.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="maggeo">
+ <glossterm>MAGGEO</glossterm>
+ <glossdef>
+ <para role="desc">Magellan SD card format</para>
+
+ <para> The SD card format used by the Magellan
+ Explorist 400, 500, and 600 to describe geocaches.
+ Notice what while the format can hold an infinite
+ number of geocaches, the unit will read and silently
+ discard all but 200 geocache POIs at a time.</para>
+ <para> You should name any file created with this
+ format with a ".gs" extension so the firmware can read
+ it.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="magnav">
+ <glossterm>MAGNAV</glossterm>
+ <glossdef>
+ <para role="desc">Magellan Nav Companion format</para>
+
+ <para>Magellan NAV Companion for Palm/OS is not really
+ designed for this sort of use, but its file format is
+ supported and with a little bit of patience you can
+ both read and write NAV Companion waypoints. Please
+ read README.magnav for further tips on getting
+ waypoints in and out of NAV Companion. This conversion
+ is based on partially incomplete reverse-engineering of
+ the record format, so it may not work with all versions
+ of NAV Companion. It has been tested with version 2.10
+ and 3.20.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="mapconverter">
+ <glossterm>mapconverter</glossterm>
+ <glossdef>
+ <para role="desc">Mapconverter format from Mapopolis</para>
+
+ <para>Mapconverter is a format this is read by
+ Mapopolis.com's mapconverter application. Full details
+ of it's usage are available in the file
+ README.mapconverter.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="mapsend">
+ <glossterm>MAPSEND</glossterm>
+ <glossdef>
+ <para role="desc">Magellan Mapsend format</para>
+
+ <para>Magellan was smart enough to document their file
+ format to make creating software like this
+ possible.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="mapsource">
+ <glossterm>MAPSOURCE</glossterm>
+ <glossdef>
+ <para role="desc">Garmin Mapsource format</para>
+
+ <para> Garmin Mapsource format appears compatible with
+ the various members of that product family. Icon
+ mapping is attempted between different MapSource
+ versions. Altitude is supported, but proximity and
+ depth are not. Naming files *.mps will allow
+ file->open in Mapsource to find the files more
+ easily. Versions 3, 4 and 5 of the Mapsource data
+ format are handled automatically on input and by
+ default the output is version 5. (Until 3/2004, it was
+ version 3, but since Mapsource updates are free, the
+ convenience of having modern icon sets outweighs the
+ backward compatibility concern. Users of other
+ versions can either upgrade or specify the switches to
+ get get output in a compatible format.) Waypoints,
+ routes and tracklogs are all handled, but maps sets are
+ ignored.
+</para>
+ <para> Information on the Garmin Mapsource format was
+ provided by Ian Cowley and Mark Bradley. The code was
+ implemented by Robert Lipe and Mark Bradley.</para>
+ <para>Additional options:</para>
+ <screen format="linespecific">snlen - set the length of generated shortnames </screen>
+ <screen format="linespecific">
+mpsverout - set the data format version
+ of the output file (3,4 or 5) </screen>
+ <screen format="linespecific">mpsmergeout - if the output file already exists, then the
+output is merged with it. This allows MapSource sections not being
+handled to remain intact (e.g. map sets)</screen>
+ </glossdef>
+ </glossentry>
+ <glossentry id="msroute">
+ <glossterm>MSroute</glossterm>
+ <glossdef>
+ <para role="desc">Microsoft Autoroute 2002 format</para>
+
+ <para> Input support for Microsoft AutoRoute 2002 .axe
+ files. These files contains only routes. We can
+ extract the coordinates and the names of the points
+ within route. An export to this format will not be
+ supported.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="mxf">
+ <glossterm>MXF</glossterm>
+ <glossdef>
+ <para role="desc">Maptech Exchange format.</para>
+
+ <para>Maptech Exchange Format - Another CSV format
+ file. This format complies with (at least) Maptech
+ Terrain Navigator, Terrain Professional, Take a Hike,
+ and ExpertGPS import/export MFX. Contributed by Alex
+ Mottram.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="navicache">
+ <glossterm>navicache</glossterm>
+ <glossdef>
+ <para role="desc">Nivicache.com's XML format</para>
+
+ <para>This is the XML format that's used by
+ Navicache.com for their geocaching data. There are a
+ number of fields in it that are marked "required" but
+ are Navicache-specific, so GPSBabel can not write these
+ files, but we can still read them. <ulink
+ url="http://www.navicache.com/cgi-bin/ib312a/ikonboard.cgi?act=ST;f=23;t=334">navicache.com</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="netstumbler">
+ <glossterm>Netstumbler</glossterm>
+ <glossdef>
+ <para role="desc">NetStumbler CSV summary file format</para>
+
+ <para> NetStumbler 0.4 Summary File -- Another CSV
+ format file. The default behavior when creating
+ waypoints is to use the SSID for the short name, and
+ information about the access point for the description.
+ When the SSID is not unique, is not available, or
+ consists of whitespace, a shortname is synthesized.
+ The snmac option uses the MAC address for the
+ shortname, and includes the unmodified SSID in the
+ description. Different icons are assigned to
+ encrypted, non-encrypted, stealth, and non-stealth
+ access points; these may be changed with options.
+ Import only.
+</para>
+ <para> Additional options:</para>
+ <screen format="linespecific"> nseicon - Name of icon used for non-stealth encrypted access
+points</screen>
+ <screen format="linespecific"> nsneicon - Name of icon used for non-stealth non-encrypted
+access points</screen>
+ <screen format="linespecific"> seicon - Name of icon used for stealth encrypted access
+points</screen>
+ <screen format="linespecific"> sneicon - Name of icon used for stealth non-encrypted access
+points</screen>
+ <screen format="linespecific">snmac - Always use the MAC address as the shortname.</screen>
+ </glossdef>
+ </glossentry>
+ <glossentry id="nima">
+ <glossterm>NIMA</glossterm>
+ <glossdef>
+ <para role="desc">National Imagery and Mapping agency format</para>
+
+ <para>This is a CSV format from the National Imagery
+ and Mapping Agency.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="nmea">
+ <glossterm>nmea</glossterm>
+ <glossdef>
+ <para role="desc">NMEA0183 log and waypoint format</para>
+
+ <para> This format is the file representation of the
+ NMEA0183 log and waypoint format. Representative
+ programs include:</para>
+ <para> <ulink
+ url="http://www.genimap.fi/kuluttajatuotteet/alue2.asp?folder=38&subfolder=16662&2057">genimap.fi</ulink>
+ </para>
+ <para> <ulink
+ url="http://homepages.tig.com.au/~robk/datalogger.html">homepages.tig.com.au</ulink>
+ </para>
+ <para> <ulink
+ url="http://www.gpstm.com/eng/features_eng.htm
+ ">gpstm.com</ulink>
+ </para>
+ <para> <ulink url="http://www.gpsmaster.nl/
+ ">gpsmaster.nl</ulink>
+ </para>
+ <para> <ulink
+ url="http://www.silcom.com/~rwhately/index.html">silcom.com/~rwhately</ulink>
+ </para>
+ <para> <ulink
+ url="http://www.visualgps.net/VisualGPSce/default.htm">visualgps.net</ulink>
+ </para>
+ <para> <ulink
+ url="http://www.gpsu.co.uk/">gpsu.co.uk</ulink>
+ </para>
+ <para> <ulink
+ url="http://www.kolumbus.fi/eino.uikkanen/geoconvgb/index.htm">kolumbus.fi</ulink>
+ </para>
+ <para> <ulink
+ url="http://www.commlinx.com.au/GPS_recorder.htm">commlinkx.com</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="nmn4">
+ <glossterm>nmn4</glossterm>
+ <glossdef>
+ <para role="desc">Navigon Mobile Navigator route (.rte) files.</para>
+
+ <para>Support for Navigon Mobile Navigator route (.rte) files. This
+ is a very simple text format that only requires coordinates, but
+ has fields for many other things. We only write coordinates as
+ fields like 'city' and 'street' cannot typically be populated
+ from other formats.
+
+ <ulink url="http://www.navigon.com">www.navigon.com</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="openoffice">
+ <glossterm>OPENOFFICE</glossterm>
+ <glossdef>
+ <para role="desc">Tab seperated file format - numerical processing</para>
+
+ <para> Tab seperated export-all (except geocaching
+ data) file format. Intended to serve as source for
+ number-processing applications like OpenOffice,
+ Ploticus and others. Tab was chosen as delimiter
+ because it is a) supported by both OpenOffice and
+ Ploticus and b) is not ',', so you can use <command
+ moreinfo="none">sed -i "s/./,/g"
+ <x>.csv'</command> to adapt it to locales where
+ ',' is used as decimal seperator. Contributed by
+ Tobias Minich.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="ozi">
+ <glossterm>OZI</glossterm>
+ <glossdef>
+ <para role="desc">OziExplorer Waypoint Format</para>
+
+ <para>OziExplorer Waypoint Format - Another CSV format
+ file. Tested against OziExplorer v 3.90.3a /
+ Shareware. Contributed by Alex Mottram</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="palmdoc">
+ <glossterm>PALMDOC</glossterm>
+ <glossdef>
+ <para role="desc">PalmDoc output format</para>
+
+ <para> PalmDoc output is similar to Text output, except
+ that it generates a Palm Database (PDB) file suitable
+ for use with programs like CSpotRun, TealDoc,
+ AportisDoc, Palm Reader, and others. The resulting
+ file also contains bookmarks to make it easy to jump to
+ a particular waypoint. To suppress the dashed lines
+ between waypoints, use the 'nosep' option. To specify
+ a name for the document, use the 'dbname' option. Use
+ the 'encrypt' option to encrypt hints from Groundspeak
+ GPX files. Use the 'logs' option to include
+ Groundspeak cache logs. If you would like the
+ generated bookmarks to start with the short name for
+ the waypoint, specify the 'bookmarks_short' option.
+ This is particularly useful when used in combination
+ with the 'sort' filter.
+</para>
+ <para> The following command line reads a GPX file with
+ Groundspeak extensions and writes a Palm document with
+ encrypted hints and logs:
+</para>
+ <screen format="linespecific">
+gpsbabel -i gpx -f 12345.gpx \
+ -o "palmdoc,dbname=Unfound Geocaches,encrypt,logs" \
+ -F 12345.pdb
+</screen>
+ </glossdef>
+ </glossentry>
+ <glossentry id="pathaway">
+ <glossterm>PathAway</glossterm>
+ <glossdef>
+ <para role="desc">PathAway for Palm file format</para>
+ <para> PathAway is a Palm software designed for
+ handling "most" GPS devices (including BlueTooth). In
+ this time (I mean 2005) a free tool to convert this
+ database is located on the homepage of PathAway
+ (www.pathaway.com). But I've read there ... for windows
+ and the output formats are also very limited.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="pcx">
+ <glossterm>PCX</glossterm>
+ <glossdef>
+ <para role="desc">Garmin PCX format</para>
+ <para> Garmin documents only PCX5, an older format
+ limited to the lame NMEA six-character waypoint names
+ that's treated as a second-class citizien in current
+ versions of MapSource. In Mapsource, use
+ file->import to read these files. If you name the
+ files *.wpt, Mapsource will find them easier.
+</para>
+ <para> In general, you should prefer the "mapsource" file format to
+this one.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="psitrex">
+ <glossterm>PsiTrex</glossterm>
+ <glossdef>
+ <para role="desc">KuData's Psion PDA format</para>
+ <para>This is a text format created by KuDaTa's PsiTrex
+ program for the Psion PDAs. The format can't be readily
+ handled by XCSV, so this format is handled explicitly.
+ Waypoints, routes and tracks are all handled, with icon
+ names used corresponding to verison 1.13 of
+ PsiTrex. This module was contributed to GPSBabel by
+ Mark Bradley.</para>
+ </glossdef>
+ </glossentry>
+
+ <glossentry id="psp">
+ <glossterm>PSP</glossterm>
+ <glossdef>
+ <para role="desc">Microsoft PocketStrees 2002 pushpin
+ format</para> <para> Microsoft's PocketStreets 2002
+ Pushpin (.PSP) format is not yet completely documented.
+ THE .PSP MODULE DOES NOT WORK WITH MS STREETS &
+ TRIPS 2002 .EST FILES. To create .PSP files from
+ Streets & Trips 2002, you will need to have
+ PocketStreets support installed. </para> <para>Please
+ note that MS Streets & Trips only *EXPORTS* .PSP
+ files. It does not import them. MS Streets & Trips
+ 2002 only imports CSV files. To use .PSP files, simply
+ copy them over to the same folder on the mobile device
+ as the map (.MPS), and open PocketStreets. It should
+ also be noted that in the case a pushpin is outside of
+ the exported map area, the pin will be "grayed-out" and
+ unused in PocketStreets. This is a good thing as it
+ allows us to create one big .PSP file that covers
+ multiple .MPS files. Unfortunately, you need one .PSP
+ file for every .MPS file. :(</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="quovadis">
+ <glossterm>QUOVADIS</glossterm>
+ <glossdef>
+ <para role="desc">QuoVadis for Palm OS format</para>
+ <para> QuoVadis for Palm OS <ulink
+ url="http://www.marcosoft.com/">marcosoft.com</ulink>
+ is a program for Palm/OS. Working with record
+ definitions provided by MarcoSoft and further
+ experimentation by Bruce Thompson and "Fuzzy" from the
+ Geocaching Forums to nail down the format
+ precisely.</para>
+ <para> Should work fine for import and export.</para>
+ <para> One thing of note, QuoVadis stores all waypoints
+ in a single Palm Database without using
+ categories. This means that it may be difficult to keep
+ personal waypoints separate from generated
+ waypoints. What Bruce recommends is taking the
+ QuoVadisMarkerDB.PDB file synced down from your Palm
+ Powered device and extract the waypoints you personally
+ set to a GPX file. Then using GPSBabel's joining
+ capabilities generate a new PDB file from the personal
+ file and the other waypoint files of interest.</para>
+ <para> Currently the selection of icons to display and
+ the scale at which to display them is hardcoded. Also
+ there is no support for notes associated with
+ waypoints. This will be addressed in a future
+ revision.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="s_and_t">
+ <glossterm>s_and_t</glossterm>
+ <glossdef>
+ <para role="desc">Microsoft Streets and Trips import format</para>
+ <para> This is a format for importing into Microsoft
+ Streets and Trips. It's been exercised on versions
+ 2003, 2004, and 2005. Detailed instructions on how to
+ use it, including preserving hyperlinks, are at <ulink
+ url="http://www.gpsbabel.org/formats/s_and_t/Importing_into_Microsoft_Streets_and_Trips_2003.html">gpsbabel.org</ulink>
+ </para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="saplus">
+ <glossterm>saplus</glossterm>
+ <glossdef>
+ <para role="desc">Street Atlas USA 2004 Plus format</para>
+ <para> This format is for Street Atlas USA 2004 Plus.
+</para>
+ <para> For geocachers importing data from a tool like
+ GSAK or Spinner, import the file twice in XData. One
+ will create a file with the Cache description as a
+ hyperlink on the flag. This can clutter up the screen
+ and when you try to zoom in, it causes problems. So
+ the second one will only have a flag. Thus you can
+ turn off and on which one you want to view. The first
+ time you import the file, in the assign field types,
+ check the circle above Full Name and then next. The
+ second time you import the file do not check any circle
+ and in the second to last column, change URL to none
+ and then click next. Use the same name you used the
+ first time but add -Flag to it.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="saroute">
+ <glossterm>saroute</glossterm>
+ <glossdef>
+ <para role="desc">Delorme (anr, rte, rtd files)</para>
+ <para> This is a catch-all used by many Delorme mapping
+ products and reads the anr, rte, and rtd formats as
+ either tracks or routes.</para>
+ <para> The 'turns_only' option causes GPSBabel to read
+ only the waypoints associated with named turns. This
+ should create a list of waypoints that correspond to
+ the itinerary from Street Atlas.</para>
+ <para> The 'turns_important' option only makes sense in
+ conjunction with the 'simplify' filter. It ensures
+ that the route simplification process will remove the
+ points corresponding to turns only after it has removed
+ all other route points.
+</para>
+ <para>The 'split' option causes GPSBabel to create
+ separate routes for each street, creating a new route
+ at each turn point. For obvious reasons, 'split'
+ cannot be used at the same time as the 'turns_only' or
+ 'turns_important' options.</para>
+ <para>The 'controls' option lets you read the control
+ points (start, end, vias, and stops) for your route as
+ well as the route itself. The default for this option
+ is 'none', which won't read the control points. You
+ may also specify 'waypoints', which reads the control
+ points as waypoints, or 'route', which creates an extra
+ route named 'control points' containing just the
+ control points in order. Note that if your goal is to
+ create an arc or other CSV file, you should use 'none'
+ (or not use this option, which is the same
+ thing.)</para>
+ <para> All options only apply to route files from newer
+ (anr) versions of DeLorme software; older versions
+ didn't store the turn information with the route.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="stmwpp">
+ <glossterm>STMwpp</glossterm>
+ <glossdef>
+ <para role="desc">Suunto Track Manager WaypointPlus format.</para>
+ <para>Support for Suunto Track Manager (STM) WaypointPlus format..
+ Simple structure with coordinates and timestamp. Route points
+ (waypoints) have additionaly shortname.
+ The files can only contain one route or one track.
+ <ulink url="http://www.suunto.fi">www.suunto.fi</ulink>
+ </para>
+ <para>
+
+ Options:
+ </para>
+ <para>
+ <parameter moreinfo="none">index</parameter> - Use route/track number <index> from input data for output.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="tabsep">
+ <glossterm>tabsep</glossterm>
+ <glossdef>
+ <para role="desc">Unix tab seperated file format</para>
+ <para>Dumps all fields in a traditional Unix tab separated style.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="tef">
+ <glossterm>TEF</glossterm>
+ <glossdef>
+ <para role="desc">TourExchangeFormat. for Map&Guide</para>
+ <para>TEF, internal called "TourExchangeFormat", is a
+ XML based export format, used by Map&Guide
+ "Motorrad-Routenplaner 2005/06". Another posibility to
+ exchange data with this are the .bcr files, which are
+ supported by GPSbabel in both directions (see BCR).
+ </para>
+ <para>Via XML this software can only export routing data. So we
+ don't support writing.
+ With the option "routevia" you can eliminate calculated route
+ points from tef source file.</para>
+ <screen format="linespecific">
+gpsbabel -r -i tef,routevia -f in.xml -o gpx -F out.gpx</screen>
+ </glossdef>
+ </glossentry>
+ <glossentry id="text">
+ <glossterm>TEXT</glossterm>
+ <glossdef>
+ <para role="desc">Plain text, for people</para>
+ <para> This is a simple human readable version of the
+ data file, handy for listings of any type of waypoint
+ files. Use the 'nosep' option to suppress the lines of
+ dashes between entries. Use the 'encrypt' option to
+ encrypt hints from Groundspeak GPX files. Use the
+ 'logs' option to include Groundspeak cache logs.
+</para>
+ <para> The following command line reads a GPX file with
+ Groundspeak extensions and writes a text file with
+ encrypted hints:
+</para>
+ <screen format="linespecific">gpsbabel -i gpx -f 12345.gpx -o text,encrypt -F 12345.txt
+</screen>
+ </glossdef>
+ </glossentry>
+ <glossentry id="tiger">
+ <glossterm>TIGER</glossterm>
+ <glossdef>
+ <para role="desc">US Census Bureau mapping format </para>
+ <para>The U.S. Census Bureau provides online mapping
+ facilities. This format is described at: <ulink
+ url="http://tiger.census.gov/instruct.html">tiger.census.gov</ulink>.
+ Do notice that this format is not the actual Tiger line
+ mapping records, but rather the interface to their
+ online mapping program.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="tmpro">
+ <glossterm>TMPRO</glossterm>
+ <glossdef>
+ <para role="desc">TopoMapPro places file</para>
+ <para>TopoMapPro Places File. Reads and writes places files for use
+ in TopoMapPro <ulink url="http://www.topomappro.com">topomappro.com</ulink>). As this
+ file type can store links other than web links, anything that is not
+ a http url will be discarded. Note that this does not do datum
+ conversions, so if your input file does not have WGS84/NZGD2000
+ data, your output file won't either. Colour of waypoint icons
+ defaults to red.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="tomtom">
+ <glossterm>TomTom</glossterm>
+ <glossdef>
+ <para role="desc">TomTom .ov2 POI files</para>
+ <para> This format can read and write TomTom .ov2 (POI)
+ files, as used by the TomTom GO and TomTom Navigator.
+ It has been tested with an original TomTom GO running
+ version 5.00 of the TomTom software. There may be some
+ records that confuse the input module - if you have an
+ example of such a record "in the wild", and you aren't
+ restricted from sharing it, we encourage you to post to
+ the gpsbabel-misc mailing list to contact a
+ developer.</para>
+ <para> Note that in addition to the .ov2 file, you will
+ need a .bmp file for the icon. It should be 22x22 and
+ 16 colors, and have the same name (not including the
+ extension) as the .ov2 file.
+</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="tpg">
+ <glossterm>TPG</glossterm>
+ <glossdef>
+ <para role="desc">National Geographic Topo Waypoint format.</para>
+ <para>National Geographic Topo! Waypoint Format. This
+ filter reads and writes .TPG files created by various
+ editions of NG Topo! This filter will *not* work with
+ the newer combined .TPO files. Contributed by Alex
+ Mottram.</para>
+ <para>The option 'datum="datum name"' can be used to
+ override the default of NAD27 ("N. America 1927 mean")
+ which is correct for the continental U.S. Points in
+ Hawaii should use "Old Hawaiian_mean"</para>
+ <para>Contributed by Alex Mottram.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="vcard">
+ <glossterm>vCARD</glossterm>
+ <glossdef>
+ <para role="desc">vCard format for Apple iPod etc.</para>
+ <para>The vCard output is intended to be in a format
+ that enables waypoints to be viewed with an Apple
+ iPod. This is achieved by mapping waypoint fields into
+ vCard fields that can be displayed as 'Contacts' on the
+ iPod. With the iPod mounted as a hard disk (see your
+ iPod manual for instructions), the resulting VCF file
+ should be moved into the iPod 'Contacts' folder. As an
+ alternative, Mac OS X users may prefer to drag the VCF
+ file into their address book and synchronize with the
+ iPod using iSync. By default hints are unencrypted; use
+ the 'encrypt' option to encrypt the hints.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="vitosmt">
+ <glossterm>VitoSMT</glossterm>
+ <glossdef>
+ <para role="desc">Vito Navigator II format</para>
+ <para>Vito Navigator II is a Pocket PC GPS application.
+ This format reads a Vito Navigator II .SMT track file
+ and can work in either waypoint or track mode. The
+ speed, heading and Dilution of Position data is written
+ in the notes field.</para>
+ <para> Support for writing .SMT tracks is very experimental and may
+crash VitoNavigator II on the Pocket PC.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="xcsv">
+ <glossterm>XCSV</glossterm>
+ <glossdef>
+ <para role="desc">For user supplied style files</para>
+ <para> XCSV is an open-ended "Whatever Separated
+ Values" parser / writer designed to work with
+ user-supplied "style" files. It should handle at least
+ a few thousand of the billion CSV variants available.
+ By itself, it doesn't comply to any format, however
+ *most* CSV variants can be described as a "style" and
+ fine-tuned by the end user. For more information on
+ it's use, please see README.style in the style/
+ sub-directory of <command
+ moreinfo="none">GPSBabel</command>. For an example of
+ using the XCSV module within your C program, look at
+ the <filename moreinfo="none">ozi.c</filename>,
+ <filename moreinfo="none">mxf.c</filename>, and
+ <filename moreinfo="none">xmapwpt.c</filename> sources
+ in the GPSBabel directory. This module was contributed
+ to GPSBabel by Alex Mottram.</para>
+ <para> Additional Options: </para>
+ <screen format="linespecific">style - **REQUIRED** Path to XCSV style file.</screen>
+ <screen format="linespecific">snlen - Maximum length of synthesized shortnames. </screen>
+ <screen format="linespecific">snwhite - Switch defining whether or not to allow whitespace
+ in synthesized shortnames.
+ (0 = NO WHITESPACE, 1 = WHITESPACE OK). </screen>
+ <screen format="linespecific">snupper - Switch defining whether or not to
+ force uppercase in shortnames.
+ (0 = LEAVE AS IS, 1 = UPPERCASE ALL).
+ NOTE: sn* options require use of the '-s' command line option.</screen>
+ <para> Example Usage: </para>
+ <screen format="linespecific">gpsbabel -i xcsv,style=foo.style -f foo \
+-o xcsv,style=bar.style \
+-F bar </screen>
+ <screen format="linespecific">gpsbabel -s -i gpx -f foo.gpx \
+-o xcsv,style=my.style,snlen=8 -F bar</screen>
+ </glossdef>
+ </glossentry>
+ <glossentry id="xmap">
+ <glossterm>XMap</glossterm>
+ <glossdef>
+ <para role="desc">Delorme TopoUSA/XMap Conduit
+ format</para> <para>Delorme TopoUSA/XMap Conduit is one
+ of the billion CSV variants mentioned above. It's just
+ like S&A with the addition of a completely pointless
+ line at the beginning and end of the file. This is the
+ format used to hot-sync to XMap from withing TopoUSA.
+ Done with help of Dan Edwards.</para>
+ </glossdef>
+ </glossentry>
+ <glossentry id="xmapwpt">
+ <glossterm>XMapWpt</glossterm>
+ <glossdef>
+ <para role="desc">Delorme XMapHandHeld street Atlas format.</para>
+ <para>Delorme XMapHandHeld Street Atlas USA is another
+ of the billion CSV variants. This is the format used
+ by XmapHH SA USA on (at least) PocketPC O/S. Please
+ see README.xmapwpt for more information on it's
+ intricacies. This XMap is not to be confused with the
+ XMap mentioned above. Contributed to GPSBabel by Alex
+ Mottram.</para>
+ </glossdef>
+ </glossentry>
+ </glosslist>
+ <section>
+ <title>DATA FILTERS</title>
+ <para> GPSBabel supports data filtering. Data filters are invoked
+from the command line via the '-x' option. It should be noted that
+data filters are invoked in the internal pipeline at the point that
+corresponds to their position on the command. This implies that
+specifying a filter before reading any data ('-x
+<filter> -f <file>'), despite being legal,
+will not have any effect. The advantage is that filters can be used
+intermittently between several variations of input and output
+functions. It should also be noted that filtering data from different
+input types can sometimes produce undesirable results due to
+differences in the native data formats.
+</para>
+ <para> Beware that most filters only apply to a certain kind of
+data. This is usually indicated below by referring to points, tracks
+or routes in the first sentence which describes each filter or in the
+table at <ulink url="http://www.gpsbabel.org/capabilities.html">gpsbabel.org</ulink> .
+</para>
+ <section>
+ <title>POSITION</title>
+ <para> The position filter is designed to remove points based on their
+proximity to each other. Distances can be passed on the command line
+by passing the <parameter moreinfo="none">distance=XXX</parameter> option to the
+filter. Distance options may be expressed in feet
+(<parameter moreinfo="none">distance=3f</parameter>) or meters
+(<parameter moreinfo="none">distance=1m</parameter>). The default is zero feet,
+essentially a duplicate position. </para>
+ <para> For example:</para>
+ <screen format="linespecific">
+gpsbabel -i geo -f 1.loc -f 2.loc -x position,distance=1f \
+ -o mapsend -F 3.wpt</screen>
+ <para> would remove multiple points that are within 1 foot of each
+other, leaving just one.</para>
+ <para> You can also specify the "all" option, which would remove all
+of the points rather than leaving one.</para>
+ </section>
+ <section>
+ <title>RADIUS</title>
+ <para> The radius filter is designed to include points based on their
+proximity to a central point. Distances and the central point are
+declared on the command line by passing the
+<parameter moreinfo="none">distance=X.XX</parameter>, <parameter moreinfo="none">lat=X.XX</parameter>,
+and <parameter moreinfo="none">lon=X.XX</parameter> options to the filter. Distance
+options may be expressed in miles (<parameter moreinfo="none">distance=3M</parameter>)
+or kilometers (<parameter moreinfo="none">distance=3K</parameter>). The default is
+zero miles. Additionally, the exclude option may be specified to
+reverse the effect of the filter, so that points further from the
+center are kept and closer points are discarded.</para>
+ <para> For example:</para>
+ <screen format="linespecific">
+gpsbabel -i geo -f 1.loc -x radius,distance=1.5M,lat=30.0,lon=-90.0 \ -o mapsend -F 2.wpt</screen>
+ <para> would include only points within 1.5 miles of N30.000 W90.000
+</para>
+ </section>
+ <section>
+ <title> DUPLICATE</title>
+ <para> The duplicate filter is designed to remove duplicate points
+based on their shortname (traditionally a waypoint's name on the GPS
+receiver), and/or their location (to a precision of 6 decimals). This
+filter supports two options that specify how duplicates will be
+recognized, "<parameter moreinfo="none">shortname</parameter>" and
+"<parameter moreinfo="none">location</parameter>". Generally, at least one of these
+options is REQUIRED. For example:</para>
+ <screen format="linespecific">
+gpsbabel -i gpx -f 1.gpx -f 2.gpx -x duplicate,location,shortname \ -o gpx -F merged_with_no_dupes.gpx</screen>
+ <para> would remove points that have duplicate shortnames *AND*
+duplicate locations. The result would be a GPX file that more than
+likely contains only unique points and point data.</para>
+ <para> The duplicate filter can also take an "all" option. If you
+specify that option, all instances of a duplicated waypoint will be
+removed, not just the second and subsequent instances. If your input
+file contains waypoints A, B, B, and C, the output file will contain
+waypoints A, B, and C without the "all" option, or just A and C with
+the "all" option. This option can be useful as an "ignore list" in
+some circumstances.
+</para>
+ <para> Finally, the duplicate filter takes a
+"<parameter moreinfo="none">correct</parameter>" option. If you specify that option,
+the latitude and longitude frmo later duplicates will replace the
+latitude and longitude in earlier waypoints. You can use this to
+apply a list of "<emphasis role="bold">waypoint
+corrections</emphasis>" to a larger file, while keeping all of the
+other details from the larger file.</para>
+ </section>
+ <section>
+ <title> DISTANCE FROM A ROUTE (ARC) ARC</title>
+ <para> The arc filter is designed to include points based on their
+proximity to an arc, which is a series of connected line segments
+similar to a route or a track but without any associated data other
+than the coordinates.
+</para>
+ <para> The arc is defined in a file whose name must be provided with
+ the <parameter moreinfo="none">file=XXXX</parameter> option to the filter. That file contains pairs
+ of coordinates for the vertices of the arc, one coordinate
+ pair per line. Comments may be included by preceding them
+ with a '#' character. An arc file looks something like this
+ sample:
+</para>
+ <screen format="linespecific">
+# Lima Road/SR3 north of Fort Wayne, Indiana
+41.150064468 -85.166207433
+41.150064468 -85.165371895
+41.149034500 -85.165157318
+41.147832870 -85.164771080
+41.146631241 -85.164384842
+41.144270897 -85.163655281
+41.141953468 -85.162882805</screen>
+ <para> An arc file may optionally contain gaps in the arc. You can
+ specify such a gap by inserting a line containing "#break"
+ either on a line by itself or after the coordinates of the
+ starting point of the new arc segment.
+</para>
+ <para> In addition to the file containing the arc, you should also
+ specify the maximum distance from the arc that will be
+ accepted; that distance is declared on the command line with
+ the <parameter moreinfo="none">distance=X.XX</parameter> option to the filter.
+ Distance options may be expressed in miles
+ (<parameter moreinfo="none">distance=3M</parameter>) or kilometers
+ (<parameter moreinfo="none">distance=3K</parameter>). The default is zero
+ miles. You may also specify the exclude option, which causes
+ GPSBabel to only include points that are further than the
+ specified distance from the arc.
+</para>
+ <para> For example, assuming the arc above is in a file called <filename moreinfo="none">lima_rd.txt</filename>:</para>
+ <screen format="linespecific">
+gpsbabel -i geo -f 1.loc -x arc,file=lima_rd.txt,distance=1 \
+ -o mapsend -F 2.wpt</screen>
+ <para> would include only points within one mile of the section of
+Lima Road covered by the arc.</para>
+ </section>
+ <section>
+ <title> POLYGON</title>
+ <para> The polygon filter includes points if they are inside of a
+ polygon. A polygon file looks like an arc file, except that
+ the arc it describes must be a closed cycle. That is, for a
+ simple polygon, the first and last points must be the same.
+ Here's a square:
+</para>
+ <screen format="linespecific">
+ # A square (not really) polygon
+ 41.0000 -85.0000
+ 41.0000 -86.0000
+ 42.0000 -86.0000
+ 42.0000 -85.0000
+ 41.0000 -85.0000
+</screen>
+ <para> Polygons may include islands and holes. To specify an island
+ or a hole, just append it to the main polygon.
+</para>
+ <para> As with the arc filter, you specify a polygon by specifying the
+ name of the polygon that contains it, using the file option.
+ You can also specify the exclude option, which reverses the
+ operation of the filter so that it only includes points that
+ are NOT in the polygon.
+</para>
+ <para> Note that this filter currently will not work properly if your
+ polygon contains one or both poles or if it spans the line of
+ 180 degrees east or west longitude.
+</para>
+ <para> For example, assume you have a polygon file that defines the
+ border of your county, called mycounty.txt. This command line
+ will give you only the points in your county:
+</para>
+ <screen format="linespecific">
+gpsbabel -i geo -f 1.loc -x polygon,file=mycounty.txt \
+-o mapsend -F 2.wpt</screen>
+ </section>
+ <section>
+ <title> SIMPLIFY</title>
+ <para> The Simplify filter is used to simplify routes and tracks for
+use with formats that limit the number of points they can contain.
+The filter takes one required parameter, which is the maximum number
+of points a route may contain. It attempts to remove points from each
+route until the number of points is at or below the given maximum,
+while also attempting to preserve the shape of the original route as
+much as possible. </para>
+ <para> The quality of the results will vary depending on the density
+ of points in the original route and the length of the original
+ route.
+</para>
+ <para> For example, suppose you have a route from Street Atlas 2003
+ that you wish to use with a Magellan GPS receiver that only
+ supports up to 50 points in a route:
+</para>
+ <screen format="linespecific">
+gpsbabel -r -i saroute -f RoadTrip.anr -x simplify,count=50 \
+ -o magellan -F grocery.rte
+</screen>
+ </section>
+ <section>
+ <title> REVERSE</title>
+ <para> The reverse filter is used to reverse tracks and routes.
+ It's mostly useful for those few formats where track/route
+ sequence matters and there isn't a way to reverse them using
+ the program itself.</para>
+ <para> The reversal is performed in the laziest way possible.
+ Timestamps are kept with the original waypoints so the
+ resulting track or route will have the interesting
+ characteristic that time runs backwards. This tends to make
+ Magellan Mapsend, in particular, do a wierd thing and place
+ each waypoint on a separate day.
+</para>
+ <para> Additionally, if you're using this to reverse a route that
+ navigates, say, an exit ramp or a one way street, you will be
+ in for unpleasant ride. application cares about timestamps
+</para>
+ </section>
+ <section>
+ <title> SORT</title>
+ <para> This simple filter allows you to alphabetize waypoints by
+ shortname or by description. It has a special suboption
+ (gcid) to sort by geocaching.com waypoint ID's when the input
+ comes from a GPX file that has GC numbers in it.
+</para>
+ </section>
+ <section>
+ <title>STACK</title>
+ <para> This filter is designed to solve advanced problems that involve
+ shuffling multiple lists of waypoints. It has three distinct
+ sets of suboptions:</para>
+ <para>PUSH</para>
+ <para>Pushes the current list of waypoints onto the stack. If
+ the 'copy' suboption is specified, a copy of the current
+ list is pushed onto the stack; otherwise, the current
+ list is cleared.</para>
+ <screen format="linespecific">
+-x stack,push
+-x stack,push,copy
+</screen>
+ <para>POP</para>
+ <para> 'Pops' the top list of waypoints off of the stack. What is
+ done with that list depends on the suboption specified. If the
+ 'append' suboption is specified, the top list of waypoints from the
+ stack is added to the end of the current list of waypoints. If the
+ 'discard' option is specified, the top list of waypoints is removed
+ from the stack and discarded, leaving the current list of waypoints
+ unchanged. If the 'replace' option is specified, or if no option is
+ specified, the top list of waypoints from the stack replaces the
+ current list of waypoints; the previous contents of the current list
+ are discarded.</para>
+ <screen format="linespecific">
+
+-x stack,pop
+-x stack,pop,discard
+-x stack,pop,append
+</screen>
+ <para>SWAP</para>
+ <para> Swaps the current list of waypoints with a list from the stack.
+ If no further options are specified, the current list is
+ swapped with the top list on the stack. If the 'depth'
+ option is specified, it indicates which item on the stack
+ should be swapped. </para>
+ <screen format="linespecific">
+-x stack,swap
+-x stack,swap,depth=2
+</screen>
+ <para> The stack can be used in conjunction with other filters to
+ implement a "union" or "logical or" functionality. The basic
+ idea is to use the stack to store copies of the original list
+ of waypoints, then use the 'swap' function to replace each
+ copy with a filtered list. Finally, append all of the
+ filtered lists to create one big list, which is then output.
+ The following example finds a list of all points that are
+ either inside county A or inside county B. Any points that
+ are inside both counties are duplicated (but the duplicates
+ can be removed with the DUPLICATE filter; see above.)
+</para>
+ <screen format="linespecific">
+gpsbabel -i gpx -f in.gpx \
+ -x stack,push,copy \
+ -x polygon,file=county_a.txt \
+ -x stack,swap \
+ -x polygon,file=county_b.txt \
+ -x stack,pop,append \
+ -o gpx -F out.gpx
+</screen>
+ <para> This example reads a large list of waypoints and extracts the
+ points within 20 miles of each of two cities, writing the
+ waypoint descriptions into two different PalmDoc files and
+ exporting all of the points to the GPS receiver:
+</para>
+ <screen format="linespecific">
+gpsbabel -i gpx -f indiana.gpx \
+ -x stack,push,copy \
+ -x radius,lat=41.0765,lon=-85.1365,distance=20m \
+ -o palmdoc,dbname=Fort\ Wayne -F fortwayne.pdb \
+ -x stack,swap \
+ -x radius,lat=39.7733,lon=-86.1433,distance=20m \
+ -o palmdoc,dbname=Indianapolis -F indianapolis.pdb \
+ -x stack,pop,append \
+ -o magellan -F fwaind.wpt
+
+</screen>
+ </section>
+ <section>
+ <title> TRACK</title>
+ <para> ( !!! This filter always drops empty tracks !!! ) </para>
+ <para>The track filter is a tool for manipulating track lists. The
+following options are available:</para>
+ <para> TITLE</para>
+ <para> Gives the new track(s) a basic title. Basic means if more than
+ one track is created by filter the title will be expanded
+ with the date the new track. Special formats (see UNIX
+ date or strftime for details) are possible.
+</para>
+ <screen format="linespecific">
+gpsbabel -t \
+ -i gpx -f in.gpx \
+ -x track,pack,split,title="ACTIVE LOG-%D" \
+ -o gpx -F out.gpx PACK
+ </screen>
+ <para>MOVE</para>
+ <para>Change the time of all trackpoints. This is useful if
+ your track has moved by one or more hours through a
+ time zone problem. The following example will shift
+ your track to be one hour later.</para>
+ <screen format="linespecific">
+gpsbabel -t -i gpx -f in.gpx \
+ -x track,move=+1h,pack,title="ACTIVE LOG" \
+ -o gpx -F out.gpx </screen>
+ </section>
+ <section>
+ <title> START / STOP </title>
+ <para>Filter tracks against time borders. All points outside this
+ range will be dropped. The date-time paramters have to be in
+ form of YYYYMMDDHHMMSS; but you may specify only the most
+ significant portion represented in the the leftmost fields. See
+ the example, where the time is specified only through the hour.
+ If you only want to get a track mapped on 20 july 2005 from 10
+ am to 6pm, you should use this: </para>
+ <screen format="linespecific">
+gpsbabel -t -i gpx -f in.gpx -x \
+ track,start=2005072010,stop=2005072018 \
+ -o gpx -F out.gpx </screen>
+ <para>PACK</para>
+ <para> With this default option all tracks from input will be packed
+ into one track. If tracks overlaps in time, the filter stops
+ working. To pack all the tracks together into one track and
+ give it a name, use this:</para>
+ <screen format="linespecific">
+gpsbabel -t -i gpx -f in.gpx -x track,pack,title="ACTIVE LOG" \
+ -o gpx -F out.gpx </screen>
+ </section>
+ <section>
+ <title>SPLIT </title>
+ <para> The input track will be split into several tracks depending on
+ date of track points. If there is more than one track, use the
+ pack option before before using this. To split a single tracks
+ into separate tracks for each day and name them, use this:
+ </para>
+ <screen format="linespecific">gpsbabel -t -i gpx -f in.gpx -x \
+ track,split,title="ACTIVE LOG # %Y%m%d" -o gpx -F out.gpx</screen>
+ <para> If the input has multiple tracks, pack them together before
+splitting them back apart per day thusly: </para>
+ <screen format="linespecific">
+gpsbabel -t -i gpx -f in.gpx \
+ -x track,pack,split,title="ACTIVE LOG # %D" \
+ -o gpx -F out.gpx</screen>
+ <para> Additionally you can add an interval to the split option. With
+this the track will be split if the time between two points is greater
+than this parameter. The interval must be numeric and can be int days,
+hours, minutes or seconds, expressed as one of the character "d", "h",
+"m", or "s". If no trailing character is present, the units are
+assumed to be in seconds.
+</para>
+ <para> For example, to split a track based on an four hour interval, use this:</para>
+ <screen format="linespecific">
+gpsbabel -t \
+ -i gpx -f in.gpx \
+ -x track,pack,split=4h,title="LOG # %c" \
+ -o gpx -F out.gpx
+</screen>
+ </section>
+ <section>
+ <title> MERGE</title>
+ <para> Merge puts all track points into one single track and
+ sort them by time. Points with identical time stamp
+ will be dropped !!!</para>
+ <para>
+
+ If you want to merge tracks from different devices
+ but from same trip, use this:</para>
+ <screen format="linespecific">
+gpsbabel -t \
+ -i gpx -f john.gpx \
+ -i gpx -f doe.gpx \
+ -x track,merge,title="COMBINED LOG" \
+ -o gpx -F john_doe.gpx
+</screen>
+ </section>
+ <section>
+ <title> DISCARD</title>
+ <para> This filter 'fixes' gps data by discarding points with a hdop
+ and/or vdop over a set limit. If you give both the hdop and a
+ vdop options, by default points that exceed EITHER are
+ discarded (OR). This filter processes waypoints, tracks, and
+ routes.
+</para>
+ <para> HDOP (float)</para>
+ <para> Points with a hdop exceeding the given value are discarded.
+</para>
+ <para> VDOP (float)</para>
+ <para> Points with a vdop exceeding the given value are
+discarded.</para>
+ <para> HDOPANDVDOP</para>
+ <para> Only useful if both hdop and vdop are given. Now logical AND is
+used, i.e. only points exceeding both given values are discarded.
+</para>
+ <para> Example: </para>
+ <screen format="linespecific">
+gpsbabel \
+ -i gpx -f in.gpx \
+ -x discard,hdop=10,vdop=20,hdopandvdop \
+ -o gpx -F out.gpx
+</screen>
+ <para> Contributed by Tobias Minich.</para>
+ </section>
+ </section>
+ </section>
+</article>